Hybrid content addressable memory

ABSTRACT

A CAM device memory array having different types of memory cells is disclosed. A CAM device memory array is subdivided into at least two different portions, where each portion uses only one particular type of CAM cell, and each portion is dedicated to storing a particular type of data. In particular, at least one portion consists of binary CAM cells and the other portion consists of ternary CAM cells. The portions can be partitioned along the row, or matchline, direction or along the bitline direction. Since particular data formats only require predefined bit positions of a word of data to be ternary in value, the remaining binary bit positions can be stored in binary CAM cells. Therefore, the CAM device memory array will occupy an overall area that is less than memory arrays of the same density consisting exclusively of ternary CAM cells.

FIELD OF THE INVENTION

The present invention relates generally to content addressable memories.More particularly, the present invention relates to content addressablememory array architectures.

BACKGROUND OF THE INVENTION

An associative memory system called Content Addressable Memory (CAM) hasbeen developed to permit its memory cells to be referenced by theircontents. Thus CAM has found use in lookup table implementations such ascache memory subsystems and is now rapidly finding use in networkingsystem applications such as network address translation, patternrecognition, and data compression. CAM's most valuable feature is itsability to perform a search and compare of multiple locations as asingle operation, in which search data is compared with data storedwithin the CAM. Typically search data is loaded onto search lines andcompared with stored words in the CAM. During a search-and-compareoperation, a match or mismatch signal associated with each stored wordis generated on a matchline, indicating whether the search word matchesa stored word or not.

A CAM stores data in a matrix of cells, which are typically SRAM basedcells. However, to provide ternary state CAMs, ie. where each CAM cellcan store one of three values: a logic “0”, “1” or “don't care” result,ternary SRAM based cells require two binary SRAM cells.

A typical CAM block diagram is shown in FIG. 1. The CAM 10 includes amatrix, or CAM memory array 25, of CAM cells (not shown) arranged inrows and columns. A predetermined number of CAM cells in a row store aword of data. An address decoder 17 is used to select any row within theCAM array 25 to allow data to be written into or read out of theselected row. Data access circuitry such as bitlines and columnselection devices, are located within the array 25 to transfer data intoand out of the array 25. Located within CAM array 25 for each row of CAMcells are matchline sense circuits, which are not shown, and are usedduring search-and-compare operations for outputting a result indicatinga successful or unsuccessful match of a search word against the storedword in the row. The results for all rows are processed by the priorityencoder 22 to output the address (Match Address) corresponding to thelocation of a matched word. The match address is stored in match addressregisters 18 before being output by the match address output block 19.Data is written into array 25 through the data I/O block 11 and thevarious data registers 15. Data is read out from the array 25 throughthe data output register 23 and the data I/O block 11 Other componentsof the CAM include the control circuit block 12, the flag logic block 13the voltage supply generation block 14, various control and addressregisters 16, and JTAG block 21.

FIG. 2 depicts a hierarchical view of the typical CAM array 25. CAMarray 25 includes a matrix of CAM cells 30 and a matchline sense circuitblock 26. CAM cells 30 of the CAM array 25 are arranged in rows andcolumns. CAM cells 30 of a row are connected to a common matchline MLi,and CAM cells 30 of a column are connected to a common pair of searchlines SLjb/SLj and a common pair of bitlines BLj/BLjb, where i is aninteger value between 0 and n, and j is an integer value between 0 andm. While not shown to simplify the schematic, each row of CAM cells 30is connected to a wordline, and those of skill in the art willunderstand that wordlines are required to ensure operability of the CAMcells 30. Located adjacent to the CAM array 25 for each row is matchlinesense circut block 26. Matchline sense circuit block 26 includes onematchline sense circuit 27 connected to a respective matchline MLi, andis used during search-and-compare operations for outputting matchsignals ML_OUT0-ML_OUTn which indicate a successful or unsuccessfulmatch of a search word against the stored word. Although not shown inthe simplified schematic of FIG. 2, the matchline sense circuits 27 alsoreceive control signals to control their operation, and a person skilledin the art would understand that such control signals to be necessaryfor their proper operation of the circuit. While the bitlines areconnected to well known bitline circuits, the searchlines in a CAMdevice 10 are connected to searchline drivers (not shown), such as thosedisclosed in commonly owned U.S. Pat. No. 6,522,596.

FIGS. 3 through 5 show circuit schematics of the types of CAM cells 30that can be used in the CAM array 25 of FIG. 2. FIG. 3 shows a typicalternary data SRAM type CAM cell, FIG. 4 shows an alternate ternary SRAMtype CAM cell, and FIG. 5 shows a binary SRAM type CAM cell.

FIG. 3 shows a typical ternary SRAM type CAM cell, referred to as aternary SCAM cell from this point forward. SCAM cell 40 includes twowell-known six-transistor SRAM cells 42 and 44, and a pair of search andcompare stacks. Since both SRAM cells 42 and 44 are identical to eachother, the following description of SRAM cell 42 will apply to SRAM cell44. SRAM cell 42 includes a first access transistor 46 and a secondaccess transistor 48 for coupling bitlines BLP and BLPb respectively, tothe complementary nodes of cross coupled inverters 50 and 52 in responseto an active WL signal. The first search and compare stack associatedwith SCAM cell 42 includes compare transistor 54 and search transistor56 serially connected between the matchline ML and the tail-line TL. Thegate terminal of compare transistor 54 is connected to a node of SRAMcell 42 while the gate terminal of search transistor 56 is connected tosearchline SLb. Tail-line TL is typically coupled to a ground, or VSSpower supply. The second search and compare stack associated with SRAMcell 44 includes compare transistor 58 and search transistor 60 seriallyconnected between the matchline ML and the tail-line TL. The gateterminal of compare transistor 58 is connected to a node of SRAM cell 44while the gate terminal of search transistor 60 is connected tosearchline SL.

SCAM cell 40 includes a total of 16 transistors and stores encodedternary data. Together, the two SRAM cells of SCAM cell 40 can store aternary value representing logic “1”, logic “0”, or “don't care”. Table1 below shows an example of the ternary data encoding. Persons of skillin the art should understand that SCAM cell 40 can be implemented withn-channel transistors as shown in FIG. 3, and/or p-channel transistors.TABLE 1 SRAM SRAM Ternary Value Cell 42 Cell 44 0 0 1 1 1 0 “Don't Care”0 0

FIG. 4 shows an alternate type of ternary SCAM cell similar to the oneshown in FIG. 3. The presently shown ternary SCAM cell stores one bit ofdata and one mask bit of data to block the search and compare resultsfrom affecting the matchline ML. SCAM cell 70 includes the previouslydescribed SRAM cells 42 and 44, and the search and compare stacksconsisting of transistors 54, 56, 58 and 60. However, this SCAM cell 70includes an additional mask transistor 72, and the gate terminal ofcompare transistor 58 is now connected to a storage node of SRAM cell 42that is complementary to the storage node connected to the gate ofcompare transistor 54. Mask transistor 72 is connected between thesource terminals of search transistors 56 and 60 and the tail line TL,and has its gate terminal connected to a storage node of SRAM cell 44Accordingly, SCAM cell 70 consists of 17 transistors, implemented inn-channel and/or p-channel technology. SCAM cell 70 essentiallyfunctions as a searchable binary CAM cell with masking capability. Morespecifically, the comparison circuit is enabled if the mask bit stores alogic “0” and the comparison circuit is disabled if the mask bit storesa logic “1”.

In applications where the mask bit is unnecessary, or where the data tobe stored is only binary in nature, a typical binary SCAM cell can beused.

FIG. 5 is a circuit schematic of a typical binary SCAM cell. Binary SCAMcell 80 uses the same SRAM cell 42 and search and compare stacks as seenin the previous ternary SCAM cell schematics, and includes a total of 10transistors which can be implemented in n-channel and/or p-channeltechnology. Clearly, the absence of the second SRAM cell 44 and masktransistor 72 makes binary SCAM cell 80 smaller than previously shownternary SCAM cells 40 and 70.

As previously mentioned, binary based CAM, and in particular binarySCAM, has found wide use in networking applications where data packetsare transferred through the network according to the data in the headerportion of the data packet. More specifically, network data packetrouting and switching operations involve matching the header portion ofthe data packet with predetermined comparand data. While binary CAM canbe used to match header data, it is limited to searching for exactmatches between the comparand data and the header data having the samebit length headers. Therefore, binary CAM is not practical for use insystems that receive data packets having variable bit length headers.

However, the additional “don't care” state provided by ternary CAMpermits partial match searches to be executed as the irrelevant bitpositions can be set to the “don't care” state such that no comparisonto the corresponding bit of comparand data occurs. This capability isuseful in modern network longest prefix matching operations, where onlyleading bits of the header portion are relevant for routing andswitching.

Present ternary CAM chips are available in a 9M-bit density, meaningthat the chip has approximately 9 million ternary CAM cells in itsmemory array arranged in rows and columns. A typical data packet caninclude a word of 144 bits stored by 144 ternary CAM cells in a row, ormultiple 144-bit words stored in consecutive rows memory cells. Withternary data storage capability in each ternary CAM cell, the CAM chipcan be used as a universal device for accommodating any data packetformat because any number of ternary CAM cells can be reserved forheader data.

However, it can be observed from progressive standardization ofcommunication protocols and data packet formats that a specific numberof bits of each data packet will only ever store binary data. Use ofternary CAM cells for storing only binary data is an inefficient use ofsilicon area because the unused storage cell of the ternary CAM cellcannot be used to store an unrelated bit of data, and use of ternarysearch circuits for performing binary searches unnecessarily wastespower.

Various schemes have been proposed in which ternary CAM cells can bedynamically configurable as binary CAM cells, such that the second databit storage location of the ternary CAM cell can be used for storinganother bit of data. Accordingly, the storage density of the CAM devicememory array is effectively doubled. Unfortunately, such schemes requirerelatively complex CAM cell configurations which will further increasethe size of the ternary CAM device memory array, and circuit overheadfor controlling the operating mode of the configurable memory cells.

It is, therefore, desirable to provide a hybrid binary/ternary CAMdevice memory array that occupies minimal silicon area and consumes lesspower, while maintaining or improving CAM search and compareperformance.

SUMMARY OF THE INVENTION

It is an object of the present invention to obviate or mitigate at leastone disadvantage of previous CAM device memory array architectures. Inparticular, it is an object of the present invention to minimize thesize of the CAM device memory array that can efficiently store bothbinary and ternary data.

In a first aspect, the present invention provides a hybrid contentaddressable memory array. The hybrid content addressable memory arrayincludes a first memory portion having a first type of contentaddressable memory cells arranged in rows and columns, and a secondmemory portion having a second type of content addressable memory cellsarranged in rows and columns, where the second type of contentaddressable memory cells being electrically coupled to the first type ofcontent addressable memory cells.

In an embodiment of the first aspect, the first memory portion and thesecond memory portion include matchlines, where each matchline of thefirst memory portion is coupled to the first type of content addressablememory cells, and each matchline of the second memory portion is coupledto the second type of content addressable memory cells. According to anaspect of the present embodiment, the first type of content addressablememory cells include ternary content addressable memory cells and thesecond type of content addressable memory cells include binary contentaddressable memory cells, and the matchlines of the first memory portionand the matchlines of the second memory portion are interleaved witheach other.

According to further embodiments of the first aspect,the first type ofcontent addressable memory cells can include binary content addressablememory cells, the second type of content addressable memory cells caninclude ternary content addressable memory cells, the first and thesecond type of content addressable memory cells include SRAM basedbinary content addressable memory cells and SRAM based ternary contentaddressable memory cells, and at least one of the first and the secondtype of content addressable memory cells include configurableternary-binary content addressable memory cells.

According to another embodiment of the first aspect, the first type ofcontent addressable memory cells and the second type of contentaddressable memory cells of a row are coupled to a logical matchline,where the logical matchline can include a segmented matchline having afirst matchline segment and a second matchline segnent. The first typeof content addressable memory cells can be coupled to the firstmatchline segment and the second type of content addressable memorycells can be coupled to the second matchline segment. Alternatively, thefirst type of content addressable memory cells and the second type ofcontent addressable memory cells of a column can be coupled to commonsearchlines.

In a second aspect, the present invention provides a hybrid contentaddressable memory array having a first type of content addressablememory cells coupled to a logical matchline, and a second type ofcontent addressable memory cells coupled to the logical matchline. Thefirst type of content addressable memory cells can include binarycontent addressable memory cells and the second type of contentaddressable memory cells can include ternary content addressable memorycells, where the content addressable memory cells can be SRAM based.

According to an embodiment of the present aspect, the logical matchlineincludes a segmented matchline having at least two matchline segments,where the first type of content addressable memory cells are coupled toone of the at least two matchline segments and the second type ofcontent addressable memory cells are coupled to the other of the atleast two matchline segments.

In a third aspect, the present invention provides a hybrid contentaddressable memory array having a first type of content addressablememory cells coupled to common searchlines, and a second type of contentaddressable memory cells coupled to the common searchlines. The firsttype of content addressable memory cells can include binary contentaddressable memory cells and the second type of content addressablememory cells can include ternary content addressable memory cells, wherethe content addressable memory cells can be SRAM based.

Other aspects and features of the present invention will become apparentto those ordinarily skilled in the art upon review of the followingdescription of specific embodiments of the invention in conjunction withthe accompanying figures.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention will now be described, by way ofexample only, with reference to the attached Figures, wherein:

FIG. 1 is a block diagram of a typical DRAM based CAM chip;

FIG. 2 is a circuit schematic of the memory array of FIG. 1;

FIG. 3 is a circuit schematic of an SRAM based ternary CAM cell;

FIG. 4 is a circuit schematic of an alternate SRAM based ternary CAMcell;

FIG. 5 is a circuit schematic of an SRAM based binary CAM cell;

FIG. 6 is a hybrid CAM device memory array architecture according to anembodiment of the present invention;

FIG. 7 is a circuit schematic of the hybrid CAM device memory array ofFIG. 6;

FIG. 8 is a hybrid CAM device memory array architecture according toanother embodiment of the present invention; and,

FIG. 9 is a circuit schematic of the hybrid CAM device memory array ofFIG. 8, and,

FIG. 10 is a schematic of a DRAM based ternary CAM cell.

DETAILED DESCRIPTION

Generally, the present invention provides a content addressable memoryarray architecture that optimizes storage of binary-only and ternarydata without additional circuit overhead. Furthermore, the embodimentsof the present invention benefit from reduced power consumption andimproved performance as a result of the optimized storage scheme forbinary-only and ternary data.

As standardization of formats for network data packets develop, specificfields of the data packets can become constrained by rules of thestandard. For example, header fields of data packets must not exceed apredetermined number of bits in length, where each bit position of theheader field must be able to store one of three states. As previouslymentioned, the three states in the CAM context include logic “1”, logic“0” and “don't care” states. Other fields of the data packets, such asthe data portion, are simply restricted to binary values. As most CAMdevices use only ternary CAM cells, an in particular ternary SCAM cells,significant silicon area can be saved if ternary CAM cells used only forbinary storage can be replaced with smaller binary CAM cells.

According to the embodiments of the present invention, a CAM devicememory array is subdivided into at least two different portions, whereeach portion uses only one particular type of CAM cell, and each portionis dedicated to storing a particular type of data.

FIG. 6 is a schematic illustrating a CAM device memory array 100according to a first embodiment of the present invention that storeseach word of data in two different types of CAM cells. In the presentlydescribed embodiment, CAM device memory array 100 is subdivided into abinary CAM cell section 102 and a ternary CAM cell section 104, wherethe CAM cells are disposed in rows and columns, where each row of CAMcells forms a word of data. Hence, each wordline and matchline iscoupled to CAM cells in the binary section 102 and CAM cells in theternary section 104. In this particular example, ternary section 104stores bit positions D0 to D71 of each word, and binary section 102stores bit positions D72 to D143 of each word. However, the bit lengthof each section is not limited to the configuration shown in FIG. 6.Therefore, since half of the CAM device memory array 100 consists ofbinary CAM cells, such as binary SCAM cells, the overall memory arraysize is significantly reduced over an equivalent density memory arrayconsisting exclusively of ternary SCAM cells. Although CAM device memoryarray 100 is 144 bits wide and 64K rows long, a memory array of anydimension can be partitioned into a binary section and ternary sectionaccording to the embodiment of the present invention.

FIG. 7 is a schematic showing the details of the CAM device memory array100 illustrated in FIG. 6. Matchlines ML0 to MLn extend horizontallybetween the binary section 102 and the ternary section 104, and are eachcoupled to a matchline sense circuit 106 for sensing a respectivevoltage level during a search and compare operation. As shown in FIG. 7,the content addressable memory cells of binary section 102 and ternarysection 104 are electrically coupled to each other via the commonmatchlines. Wordlines and tail lines are not shown to simplify theschematic, but those of skll in the art will understand that they arerequired for proper operation. Each matchline sense circuit 106 providesa matchline output ML_OUT representing a match or mismatch condition ofits corresponding matchline. Each matchline is coupled to binary CAMcells 90 in binary section 102 and ternary CAM cells 92 in ternarysection 104. It is noted that binary CAM cell 90 can be implemented withthe circuit configuration of binary SCAM cell 80 and ternary CAM cell 92can be implemented with the circuit configuration of either ternary SCAMcells 40 or 70 shown in FIGS. 3 and 4 respectively. It should beapparent to those of skill in the art that binary CAM cells 90 in binarysection 102 minimizes silicon area consumption since each binary CAMcell 90 uses fewer transistors than each ternary CAM cell 92 Therefore,CAM device memory array 100 maximizes silicon area efficiency becausesmaller sized binary CAM cells are used to store data that will only bebinary in format. It is noted that binary CAM cells 90 can have a layoutoptimized to minimize column pitch. Hence silicon area along the rowdirection can be further conserved.

Advantages of the present embodiment are as follows. The reduced rowlength of each matchline translates into reduced capacitance thereof.Therefore, the performance of each matchline is enhanced while overallpower consumption is reduced.

While the embodiments of the present invention shown in FIGS. 6 and 7partitions the CAM device memory array by columns, the memory array canbe partitioned by rows according to an alternate embodiment of thepresent invention.

FIG. 8 is a schematic illustrating a CAM device memory array 110according to a second embodiment of the present invention, with thememory array partitioned into different portions by rows. It is notedthat for the purposes of illustrating the present embodiment, CAM devicememory array 110 has the same number of rows and columns as CAM devicememory array 100 shown in FIG. 6. In the presently described embodiment,CAM device memory array 110 is subdivided into a ternary CAM cellsection 112 and a binary CAM cell section 114, where the CAM cells aredisposed in rows and columns, where each row of CAM cells forms a wordof data. As shown in FIG. 8, ternary CAM cell section 112 occupies 16Krows while binary CAM cell section 114 occupies 48K rows. As will beshown in FIG. 9, each row includes the same type of CAM cell.

FIG. 9 is a schematic showing the details of the CAM device memory array110 illustrated in FIG. 8. Matchlines ML0 and ML1 are part of theternary CAM section 114, and are each coupled to ternary CAM cells 92and a respective matchline sense circuit 116. Each matchline sensecircuit 116 is analogous to matchline sense circuit 106 of FIG. 7,therefore further description of its operation is not necessary.Matchlines MLn-1 and MLn are part of the binary CAM section 112 and areeach coupled to binary CAM cells 90 and a respective matchline sensecircuit 116. As in FIG. 7, wordlines and tail lines are not shown tosimplify the schematic, and the same binary CAM cells 90 and ternary CAMcells 92 can be used. It is noted that each pair of complementarysearchlines and bitlines extend vertically between both the binary CAMsection 112 and the ternary CAM section 114 such that the ternary CAMcells 92 and binary CAM cells 90 coupled to the same bitline andsearchline form one column of CAM cells. Therefore, the contentaddressable memory cells of binary section 112 and ternary section 114are electrically coupled to each other via the common bitlines andsearchlines. For example, ternary CAM cells 92 and binary CAM cells 90coupled to SL0b and BL0 are part of the same column of CAM cells. Inthis particular embodiment, binary CAM cells 90 have been optimized inlayout to minimize its footprint along the bitline direction, hence theoverall area occupied by CAM device memory array 110 can be minimizedalong the bitline direction since the pitch of each row of binary CAMcells 90 in the binary CAM section 112 can be made smaller than thepitch of each row of ternary CAM cells 92 in ternary CAM section 114.Therefore, an advantage resulting from the reduced bitline andsearchline length is the reduced corresponding capacitance. Therefore,bitline and searchline drive circuit performance can be improved whilereducing overall power consumption.

While the embodiments of the present invention have shown the CAM devicememory array partitioned into two memory portions, the memory array canbe partitioned into any number of memory portions to suit the particularapplication.

The operation of CAM device memory arrays 100 and 110 according to theembodiments of the present invention, will be analogous to the operationof CAM array 25. More specifically, once search data has been drivenonto the searchlines, each CAM cell 90/92 compares its stored dataagainst the searchline data to affect the matchline if a mismatchcondition exists.

In the embodiment of the invention shown in FIG. 9, the system mayexecute a search for binary data stored only in binary section 112, orfor ternary data stored in ternary section 114. Although the searchlinesare coupled to both the binary section 112 and ternary section 114, thesystem will have knowledge of those physical rows in each section. Morespecifically, the results provided by the matchline sense circuits 116corresponding to results that are undesired can be masked out. Forexample, this can be done by disabling the matchline sense circuits 116that correspond to either the binary section 112 during a ternary datasearch, or the ternary section 114 during a binary data search.

According to another embodiment of the present invention, the CAM devicememory array 100 can have segmented matchlines, where each matchlinesegment of the same row is coupled to different types of CAM cells.Accordingly, each matchline segment of the same row belong to the samelogical matchline. Matchline segmentation is disclosed and taught incommonly owned U.S. Pat. No. 6,584,003, the contents of which areincorporated herein by reference, as a technique to reduce powerconsumption in a CAM device memory array. For example, a first matchlinesegment of a row of CAM cells can be coupled only to binary CAM cells90, and a second matchline segment of the row of CAM cells can becoupled only to ternary CAM cells 92. Alternatively, each matchlinesegment can be coupled to groups of binary CAM cells 90 and ternary CAMcells 92. Those of skill in the art will appreciate that each row can beconfigured to include any number of matchline segments.

While the previous embodiments of the present invention shown in FIGS. 7and 9 show the CAM device memory array 100 as having two different CAMmemory cell sections, additional CAM memory cell sections can beincluded. For example, CAM device memory array 100 can include severalCAM memory cell sections interleaved with each other, where each sectioncan include any number of rows or columns of CAM memory cells. Hence,the CAM device memory array 100 can be seen as including two logical CAMmemory cell blocks having rows or columns, or small groups of rows orcolumns, interleaved with other.

An alternate embodiment where one or more ternary rows of CAM memorycells is interleaved with one or more binary rows of CAM memory cellscan be used in very wide word applications where a word spans more thanone physical row of CAM memory cells. In one such an embodiment, eachrow of ternary CAM cells can be followed by three rows of binary CAMcells. Descriptions of wide word applications are available in commonlyowned U.S. Pat. No. 6,708,250 and commonly owned U.S. patent applicationSer. No. 10/357,270.

In a further alternate embodiment of the invention shown in FIGS. 6 and7, the ternary section 104 can include another section of cells,consisting of columns of configurable ternary-binary CAM cells adjacentto the binary section 102 so that the width of ternary section 104 canbe dynamically configurable. Alternatively, the entire ternary section104 can consist of configurable ternary-binary CAM cells. Examples ofconfigurable ternary-binary CAM cells are shown in U.S. Pat. Nos.6,108,227 and 6,362,992. Persons of skill in the art will understand howto incorporate such cells into the embodiments of the present invention.Therefore, significant silicon area savings can be realized by employingthe previously described embodiments of the present invention.Preferably, ternary CAM cell sections of the CAM device memory arrayinclude ternary SCAM cells while binary CAM cell sections include binarySCAM cells, to maximize silicon area savings.

While binary and ternary SCAM cells are preferably used in the binaryand ternary sections of the CAM device memory array, DRAM based binaryand ternary CAM cells, referred to as a ternary or binary DCAM cellsfrom this point forward, can be used instead.

FIG. 10 shows a typical ternary DCAM cell 200 as described in CanadianPatent Application No. 2,266,062, filed Mar. 31, 1999, the contents ofwhich are incorporated herein by reference. DCAM cell 200 has acomparison circuit that includes an n-channel search transistor 202connected in series with an n-channel compare transistor 204 between amatchline ML and a tail line TL. A search line SL is connected to thegate of search transistor 202. The storage circuit includes an n-channelaccess transistor 206 having a gate connected to a wordline WL andconnected in series with capacitor 208 between bitline BL and a cellplate voltage potential VCP. Charge storage node CELL1 is connected tothe gate of compare transistor 204 to turn on transistor 204 if there ischarge stored on capacitor 208 i.e. if CELL1 is logic “1”. The remainingtransistors and capacitor replicate transistors 202, 204, 206 andcapacitor 208 for the other half of the ternary data bit, and areconnected to corresponding lines SLb and BLb and are provided to supportternary data storage. Further description of the ternary DCAM cell 200is detailed in the aforementioned reference. It is noted that a binaryDCAM version of the ternary DCAM cell 200 is identical to ternary DCAMcell 200, since complementary data states of a single bit of data arenecessary for executing a binary search and compare operation.Therefore, ternary DCAM cell 200 can store either binary or ternarydata.

Therefore, according to another embodiment of the present invention, CAMdevice memory arrays 100 and 110 can include ternary and binary DCAMcells in their binary and ternary sections respectively. Morespecifically, DCAM cells 200 in the ternary section stores ternary datawhile DCAM cells 200 in the binary section stores binary data. Controllogic therefore determines the particular columns of DCAM cells 200 thatshould have binary data or ternary data written to them. The controllogic also determines the appropriate type of search, ie. binary orternary search, to be applied to specific columns.

The above-described embodiments of the present invention are intended tobe examples only. Alterations, modifications and variations may beeffected to the particular embodiments by those of skill in the artwithout departing from the scope of the invention, which is definedsolely by the claims appended hereto.

1. A hybrid content addressable memory array comprising: a first memoryportion having a first type of content addressable memory cells arrangedin rows and columns; a second memory portion having a second type ofcontent addressable memory cells arranged in rows and columns, thesecond type of content addressable memory cells being electricallycoupled to the first type of content addressable memory cells.
 2. Thehybrid content addressable memory array of claim 1, wherein the firstmemory portion and the second memory portion include matchlines, eachmatchline of the first memory portion being coupled to the first type ofcontent addressable memory cells, and each matchline of the secondmemory portion being coupled to the second type of content addressablememory cells.
 3. The hybrid content addressable memory array of claim 2,wherein the first type of content addressable memory cells includeternary content addressable memory cells and the second type of contentaddressable memory cells include binary content addressable memorycells.
 4. The hybrid content addressable memory array of claim 3,wherein the matchlines of the first memory portion and the matchlines ofthe second memory portion are interleaved with each other.
 5. The hybridcontent addressable memory array of claim 1, wherein the first type ofcontent addressable memory cells include binary content addressablememory cells.
 6. The hybrid content addressable memory array of claim 1,wherein the second type of content addressable memory cells includeternary content addressable memory cells.
 7. The hybrid contentaddressable memory array of claim 1, wherein the first type of contentaddressable memory cells include SRAM based binary content addressablememory cells.
 8. The hybrid content addressable memory array of claim 1,wherein the second type of content addressable memory cells include SRAMbased ternary content addressable memory cells.
 9. The hybrid contentaddressable memory array of claim 1, wherein at least one of the firstand the second type of content addressable memory cells includeconfigurable ternary-binary content addressable memory cells.
 10. Thehybrid content addressable memory array of claim 1, wherein the firsttype of content addressable memory cells and the second type of contentaddressable memory cells of a row are coupled to a logical matchline.11. The hybrid content addressable memory array of claim 10, wherein thelogical matchline includes a segmented matchline.
 12. The hybrid contentaddressable memory array of claim 11, wherein the segmented matchlineincludes a first matchline segment and a second matchline segment. 13.The hybrid content addressable memory array of claim 12, wherein thefirst type of content addressable memory cells are coupled to the firstmatchline segment and the second type of content addressable memorycells are coupled to the second matchline segment.
 14. The hybridcontent addressable memory array of claim 1, wherein the first type ofcontent addressable memory cells and the second type of contentaddressable memory cells of a column are coupled to common searchlines.15. A hybrid content addressable memory array comprising: a first typeof content addressable memory cells coupled to a logical matchline; anda second type of content addressable memory cells coupled to the logicalmatchline.
 16. The hybrid content addressable memory array of claim 15,wherein the first type of content addressable memory cells includebinary content addressable memory cells and the second type of contentaddressable memory cells include ternary content addressable memorycells.
 17. The hybrid content addressable memory array of claim 16,wherein the binary content addressable memory cells include SRAM basedbinary content addressable memory cells and the ternary contentaddressable memory cells include SRAM based ternary content addressablememory cells.
 18. The hybrid content addressable memory array of claim15, wherein the logical matchline includes a segmented matchline. 19.The hybrid content addressable memory array of claim 18, wherein thesegmented matchline includes at least two matchline segments.
 20. Thehybrid content addressable memory array of claim 19, wherein the firsttype of content addressable memory cells are coupled to one of the atleast two matchline segments and the second type of content addressablememory cells are coupled to the other of the at least two matchlinesegments.
 21. A hybrid content addressable memory array comprising: afirst type of content addressable memory cells coupled to commonsearchlines; and a second type of content addressable memory cellscoupled to the common searchlines.
 22. The hybrid content addressablememory array of claim 21, wherein the first type of content addressablememory cells include binary content addressable memory cells and thesecond type of content addressable memory cells include ternary contentaddressable memory cells.
 23. The hybrid content addressable memoryarray of claim 22, wherein the binary content addressable memory cellsinclude SRAM based binary content addressable memory cells and theternary content addressable memory cells include SRAM based ternarycontent addressable memory cells.